package com.ehome.manage.module.utils.process.node;

import com.ehome.manage.module.utils.process.context.BaseProcessContext;

/**
 * 业务流程节点标记接口
 *
 * @param <T> 流程上下文类型
 * @author xiaxinye
 */
public interface ProcessNode<T extends BaseProcessContext> {

    /**
     * 获取节点名称
     *
     * @return 返回节点的名称
     */
    String getName();

    /**
     * 执行业务处理
     *
     * @param context 业务流程上下文
     * @return 节点处理结果
     */
    NodeResult execute(T context);

}
